package leetcode141;

import domain.ListNode;

import java.util.HashMap;
public class Solution {
    public boolean hasCycle(ListNode head) {
        ListNode index = head;
        while(head!=null){
            head = head.next;
            if(head==null){
                return false;
            }
            head = head.next;
            index = index.next;
            if(head==index){
                return true;
            }
        }
        return false;
    }
}
//public class Solution {
//    public boolean hasCycle(ListNode head) {
//        //方法1 记录到达过的节点 每次到达进行比对
//        HashMap<ListNode, Boolean> map = new HashMap<>();
//        while(head!=null){
//            Boolean bool = map.get(head);
//            if(bool==null||!bool){
//                map.put(head,Boolean.TRUE);
//            }else{
//                return true;
//            }
//            head = head.next;
//        }
//        return false;
//    }
//}